// Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
// 
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// 
//     http://www.apache.org/licenses/LICENSE-2.0
// 
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

import { Canvas } from './common/Canvas'
import { Shape } from './common/shape/Shape'
import { Toolkit } from './common/Toolkit'

document.addEventListener('DOMContentLoaded', () => {
  const toolkit = new Toolkit('.toolkit')
  const canvas = new Canvas('.canvas', toolkit)

  const whitelist = ['copy', ...Shape.registeredShapes]
  canvas.on('done', ({ operation }) => {
    console.log('[canvas.done]', operation)
    if (whitelist.includes(operation)) {
      // @ts-ignore
      toolkit.root.querySelector('.move')?.click()
    }
  })
})
